Config.toml Reference
Every Schemify project is rooted in a directory that contains a Config.toml. The file is optional — if it is missing, Schemify starts with sensible defaults.
Full Example
name = "My Inverter"
pdk = "sky130"
[paths]
chn = ["top.chn"]
chn_tb = ["tb.chn_tb"]
[legacy_paths]
schematics = ["inv.sch"]
symbols = ["inv.sym"]
[simulation]
spice_include_paths = ["/pdk/sky130/libs.tech/ngspice"]
[plugins]
enabled = ["my-theme-plugin"]
disabled = []
Keys
Root
| Key |
Type |
Default |
Description |
name |
string |
"Untitled" |
Project display name. Shown in the window title. |
pdk |
string |
null |
Active PDK ("sky130", "gf180", or any string). Used by synthesis. |
[paths]
| Key |
Type |
Description |
chn |
string[] |
Native .chn schematics to open at startup. |
chn_tb |
string[] |
Testbench .chn_tb schematics. |
[legacy_paths]
| Key |
Type |
Description |
schematics |
string[] |
XSchem .sch files to import. |
symbols |
string[] |
XSchem .sym files to import. |
[simulation]
| Key |
Type |
Description |
spice_include_paths |
string[] |
Directories added as .include lines in the generated netlist. |
[plugins]
| Key |
Type |
Description |
enabled |
string[] |
Plugin names to load at startup. |
disabled |
string[] |
Plugin names to explicitly skip (overrides enabled). |
Plugin Search Path
Plugins are installed to ~/.config/Schemify/<PluginName>/. On startup, Schemify scans this directory for all installed plugins, then filters by the enabled/disabled lists in Config.toml.
PDK Values
| Value |
PDK |
"sky130" |
Google/SkyWater SKY130 |
"gf180" |
GlobalFoundries GF180MCU |
"ihp-sg13g2" |
IHP SG13G2 |
Any string is accepted — it is passed to synthesis tools as-is.